/*
    Kelompok    2
    Kelas       2
    Anggota :
    1. Yudha Wastu Prawira      / 13509002
    2. Robertus Theodore        / 13509008
    3. Rendy Bambang Junior     / 13509036
    4. Hartono Sulaiman Wijaya  / 13509046
    5. Daniel Prihartoni        / 13509088
    6. Raydhitya Yosep          / 13509092

*/
#ifndef _STATE_H
#define _STATE_H

#include "Parser.h"
#include "Display.h"
#include <time.h>

class State{
	public :
		//ctor & dtor
		State();
		~State();

		//method getter status aktivasi state
		bool isActive();
		//update isi state dan menghasilkan DisplayInfo utk ditampilkan
		virtual DisplayInfo update(CommandToken) = 0;
		//mendapatkan display default pertama kali (bukan dari user)
		virtual DisplayInfo getFirstDisplay() = 0;

	protected :
		//status apakah state sedang aktif atau tidak
		bool active;
		//setiap state mengembalikan info tampilan
		DisplayInfo displayInfo;
};

#endif
